// Guard.cpp: implementation of the Guard class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Guard.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

Guard::Guard(CMutex * pMutex):
	m_pMutex(pMutex)
{
	ASSERT(m_pMutex);
	m_pSingleLock = new CSingleLock(m_pMutex);
	m_pSingleLock->Lock();
}

Guard::~Guard()
{
	m_pSingleLock->Unlock();
	delete m_pSingleLock;
}